package com.example.bourse.pojo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 支付记录表
 * @TableName payment_flow
 */
@TableName(value ="payment_flow")
@Data
public class PaymentFlow implements Serializable {
    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 订单ID（关联order.id）
     */
    @TableField(value = "order_id")
    private Long orderId;

    /**
     * 买家ID（关联user.id）
     */
    @TableField(value = "buyer_id")
    private Long buyerId;

    /**
     * 卖家ID（关联user.id）
     */
    @TableField(value = "seller_id")
    private Long sellerId;

    /**
     * 支付流水号
     */
    @TableField(value = "payment_no")
    private String paymentNo;

    /**
     * 第三方支付流水号
     */
    @TableField(value = "third_payment_no")
    private String thirdPaymentNo;

    /**
     * 支付金额（单位：分）
     */
    @TableField(value = "amount_money")
    private Long amountMoney;

    /**
     * 支付方式（1:支付宝，2:微信支付）
     */
    @TableField(value = "payment_method")
    private Integer paymentMethod;

    /**
     * 支付状态（0:未支付，1:支付，2:退款）
     */
    @TableField(value = "status")
    private Integer status;

    /**
     * 逻辑删除（0:未删除，1:已删除）
     */
    @TableField(value = "del_flag")
    private Integer delFlag;

    /**
     * 创建时间
     */
    @TableField(value = "create_date")
    private Date createDate;

    /**
     * 更新时间
     */
    @TableField(value = "update_date")
    private Date updateDate;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}